Disparo por MQTT
Este tutorial le muestra cómo disparar remotamente su cámara OV20i usando mensajes MQTT simples. En solo unos pasos, tendrá un sistema que puede capturar y procesar imágenes desde cualquier lugar de su red, ¡sin necesidad de programación compleja!
Lo que Construirá: Un disparador remoto simple que le permite iniciar inspecciones de cámara enviando un mensaje básico a través de su red.
Tiempo Estimado: 20-30 minutos
Nivel de Habilidad: Principiante
Ejemplo Real: Imagine un botón en la tablet de un operador que dispara instantáneamente la cámara para inspeccionar una pieza; eso es exactamente lo que construiremos, pero usando mensajes MQTT en lugar de botones.
Prerrequisitos
Antes de comenzar, asegúrese de tener:
- Cámara OV20i conectada y funcionando
- Una receta configurada y lista para usar
- Comunicación MQTT configurada (consulte la guía "MQTT Communication Setup" si es necesario)
El disparo de su cámara debe estar configurado en Manual en Imaging Setup; esto indica a la cámara que espere sus comandos remotos en lugar de capturar automáticamente.
Por qué el Disparo por MQTT es Fácil
La OV20i facilita el disparo remoto:
- No requiere programación - solo arrastre y conecte algunos nodos
- Funciona al instante - envíe un mensaje, obtenga resultados inmediatamente
- Mensajería confiable - MQTT asegura que sus comandos lleguen a la cámara
- Cualquier dispositivo puede disparar - tablets, computadoras, PLCs o sensores
Ideal para: Control remoto de inspección, líneas de producción automatizadas o cualquier situación donde necesite disparar la cámara desde otra ubicación.
Paso 1: Revisión Rápida de la Cámara
1.1 Configure la Cámara en Disparo Manual
- Vaya a su Editor de Recetas
- Haga clic en "Imaging Setup"
- Busque Trigger Mode y configúrelo en "Manual"
- Haga clic en Guardar
¿Por qué Manual? Esto indica a la cámara "espera mi comando" en lugar de tomar fotos automáticamente.
1.2 Encuentre el Número de su Receta
- Mire la barra de direcciones del navegador mientras está en el Editor de Recetas
- Encuentre el número después de
/recipe/
(ejemplo: si la URL muestra/recipe/10
, su número de receta es 10) - Anote este número - lo necesitará en unos minutos
Paso 2: Abra el Flow Builder
2.1 Acceda a Node-RED
- En su Editor de Recetas, haga clic en "IO Block"
- Haga clic en "Configure IO"
2.2 Comience desde Cero
Si ve otros nodos en el lienzo, está bien - solo añadiremos nuestro nuevo flujo de disparo junto a ellos.
¡Comencemos!
Paso 3: El Secreto Simple del Disparo por MQTT
Esto es todo lo que necesita saber: La cámara necesita 2 mensajes rápidos para tomar una foto remotamente.
- Primer mensaje: "Oye cámara, prepárate para un comando remoto"
- Segundo mensaje: "¡Ahora toma una foto!"
3.1 Arrastre Estos 5 Nodos a su Lienzo
Desde el panel izquierdo, arrastre estos al área principal:
- Inject (de la sección Input) - Este será su "botón de disparo"
- Change (de la sección Function) - Para el mensaje 1
- Delay (de la sección Function) - Pausa corta entre mensajes
- Change (de la sección Function) - Para el mensaje 2
- MQTT Out (de la sección Network) - Envía mensajes a la cámara
Paso 4: Configure Sus Nodos
4.1 Configure su Botón de Disparo
- Haga doble clic en el nodo Inject
- Cambie el nombre a "Remote Trigger"
- Haga clic en "Done"
4.2 Configure el Mensaje 1 (Comando de Preparación)
- Haga doble clic en el primer nodo Change
- Cambie el nombre a "Get Ready"
- Haga clic en "Add" y seleccione "SET"
- Configure
msg.topic
comostream_mode/set
- Haga clic en "Add" nuevamente y seleccione "SET"
- Configure
msg.payload
comoHMI_MODE
- Haga clic en "Done"
Qué hace esto: Indica a la cámara "prepárate para un comando remoto."
4.3 Añada una Pequeña Pausa
- Haga doble clic en el nodo Delay
- Configure el retardo a 10 milisegundos
- Haga clic en "Done"
¿Por qué? Solo le da a la cámara una fracción de segundo para prepararse.
4.4 Configure el Mensaje 2 (Comando de Tomar Foto)
- Haga doble clic en el segundo nodo Change
- Cambie el nombre a "Take Picture"
- Haga clic en "Add" y seleccione "SET"
- Configure
msg.topic
comohmi/[YOUR_RECIPE_NUMBER]/capture_mode
- Reemplace [YOUR_RECIPE_NUMBER] con su número real (por ejemplo,
hmi/10/capture_mode
) - Haga clic en "Add" nuevamente y seleccione "SET"
- Configure
msg.payload
comosingle
- Haga clic en "Done"
Qué hace esto: Indica a la cámara "¡toma una foto ahora!"
4.5 Configure el Envío de Mensajes
- Haga doble clic en el nodo MQTT Out
- Seleccione su broker MQTT (debe estar ya configurado)
- Cambie el nombre a "Send to Camera"
- Haga clic en "Done"
Paso 5: Conecte Todo
¡Esta es la parte divertida! Ahora conectamos sus nodos para crear el flujo.
5.1 Realice las Conexiones
Dibuje cables entre nodos así:
- Remote Trigger → Get Ready → Send to Camera
- Remote Trigger → Delay → Take Picture → Send to Camera
Guía visual:
Remote Trigger ──→ Get Ready ──→ Send to Camera
│
└──→ Delay ──→ Take Picture ──→ Send to Camera
5.2 Cómo Conectar Nodos
- Haga clic y arrastre desde el cuadrito pequeño en el lado derecho de un nodo
- Suelte el cable en el lado izquierdo del siguiente nodo
- Verá una línea gris que los conecta
Paso 6: Pruebe su Disparo Remoto
6.1 Active su Flujo
- Haga clic en el botón rojo "Deploy" en la esquina superior derecha
- Debería ver el mensaje "Successfully deployed"
6.2 Pruébelo
- Coloque una pieza frente a su cámara (para prueba)
- Haga clic en el botón de su nodo "Remote Trigger"
- ¡Observe cómo su cámara toma una foto!
Señales de éxito:
- El LED de la cámara parpadea brevemente
- Escucha el procesamiento de inspección
- Aparece una imagen nueva en su Biblioteca
6.3 Verifique sus Resultados
Vaya a la página de Biblioteca - debería ver una imagen nueva con una marca de tiempo reciente. ¡Haga clic para ver los resultados de la inspección!
Si funcionó: ¡Felicidades! Acaba de disparar su cámara remotamente.
Si no: Revise la sección de solución de problemas a continuación.
Paso 7: Úselo desde Otros Dispositivos (Opcional)
¿Quiere disparar desde su teléfono, tablet u otra computadora? Así es como:
7.1 Desde Cualquier App MQTT
Descargue cualquier app MQTT y conéctese a la dirección IP de su cámara en el puerto 1883, luego:
- Envíe el primer mensaje:
- Topic:
stream_mode/set
- Mensaje:
HMI_MODE
- Topic:
- Espere un momento, luego envíe el segundo mensaje:
- Topic:
hmi/[YOUR_RECIPE_NUMBER]/capture_mode
- Mensaje:
single
- Topic:
7.2 Desde Línea de Comandos
En Windows/Mac/Linux:
# Primer mensaje
mosquitto_pub -h [CAMERA_IP] -t "stream_mode/set" -m "HMI_MODE"
# Segundo mensaje (reemplace 10 con su número de receta)
mosquitto_pub -h [CAMERA_IP] -t "hmi/10/capture_mode" -m "single"
¡Eso es todo! Su cámara tomará una foto desde cualquier lugar de su red.
Paso 8: Validación y Pruebas
8.1 Prueba de Flujo Completo
Validación completa del flujo de trabajo:
Prueba | Acción | Resultado Esperado | Estado |
---|---|---|---|
Disparo manual | Hacer clic en el botón inject | Imagen capturada y procesada | ☐ |
Activación modo HMI | Verificar estado de cámara | Cámara cambia a modo HMI | ☐ |
Ejecución de inspección | Verificar procesamiento | Debug muestra resultados de inspección | ☐ |
Disparo externo | Enviar comando MQTT | Disparo remoto funciona | ☐ |
8.2 Validación de Rendimiento
Monitoree estas métricas:
- Tiempo de respuesta al disparo: Desde mensaje MQTT hasta captura de imagen
- Duración del procesamiento: Tiempo para completar la inspección
- Entrega de resultados: Tiempo de salida en debug
- Confiabilidad del sistema: Disparos consistentes en múltiples pruebas
8.3 Preparación para Producción
Antes de desplegar en producción:
- Pruebe con piezas reales y condiciones de inspección
- Verifique integración con sus sistemas externos
- Confirme confiabilidad de red para comunicación MQTT
- Documente topics de disparo y formatos de mensajes
Paso 9: Solución Rápida de Problemas
¿No funciona? Aquí las soluciones más comunes:
9.1 La Cámara No Toma Fotos
Problema | Solución Rápida |
---|---|
No pasa nada al hacer clic en disparar | Verifique que el número de receta sea correcto en el nodo "Take Picture" |
La cámara toma foto pero no hay inspección | Asegúrese que su receta esté Activa y tenga un modelo entrenado |
El disparo funciona a veces | Verifique que el disparo esté en Manual en Imaging Setup |
9.2 Problemas con MQTT
Problema | Solución Rápida |
---|---|
Puntos rojos en nodos MQTT | Verifique la conexión con el broker MQTT en su configuración |
Botón Deploy está deshabilitado | Haga clic en cualquier parte del lienzo primero, luego intente Deploy |
Los nodos no se conectan | Asegúrese de arrastrar desde el cuadrito pequeño del lado derecho |
¿Aún atascado? Verifique que la comunicación MQTT esté configurada correctamente (consulte la guía MQTT Communication Setup).
¡Lo Logró! 🎉
¡Felicidades! Ahora tiene control remoto de su cámara OV20i. Con solo unos clics, construyó un sistema que puede:
- Disparar inspecciones desde cualquier lugar en su red
- Funcionar con teléfonos, tablets, computadoras - cualquier dispositivo que pueda enviar mensajes MQTT
- Integrarse con otros sistemas como PLCs, sensores o aplicaciones personalizadas
- Escalar a múltiples cámaras usando diferentes números de receta
¿Qué Sigue?
Ahora que tiene lo básico funcionando, puede:
Próximos Pasos Fáciles
- Probar desde diferentes dispositivos usando apps MQTT
- Crear múltiples disparadores para diferentes recetas
- Agregar esto a su flujo de producción
Ideas Avanzadas
- Conectarse a PLCs para líneas de producción automatizadas
- Construir aplicaciones personalizadas que disparen múltiples cámaras
- Agregar reenvío de resultados para enviar datos de inspección a otros sistemas
- Crear dashboards para operadores con botones de disparo
Ejemplos del Mundo Real
Así usan otros el disparo por MQTT:
- Estaciones de Control de Calidad: Operadores escanean un código de barras, el sistema dispara la inspección de cámara
- Líneas de Transporte: Sensor detecta pieza y dispara inspección automáticamente
- Inspección Manual: Tablet con botón simple de "Inspeccionar" para operadores
- Monitoreo de Producción: Sistema central coordina múltiples cámaras
Las posibilidades son infinitas - y todo comienza con el sistema simple que acaba de construir.